#字典类似hash表：根据key找value，类似查字典

#创建方法
#法1：最常见的——使用花括号
scores={'张三':10,"李四":90}#score只是一个变量，你也用别的
print(scores)#打印{'张三': 10, '李四': 90}
print(type(scores))#<class 'dict'>

#法2：使用内置函数dict()
student=dict(name='jack',age=20)
print(student)#{'name': 'jack', 'age': 20}

#空字典
d={}
print(d)#打印{}

#获取字典中的元素
#法一：使用[]
print(scores['张三'])#打印10
#法二：使用get函数
print(scores.get('张三'))#打印10
#ps:如果key不存在你用法一打印会报错，用法二会打印None


#字典元素的增删查改
print('删除前：',scores)#删除前： {'张三': 10, '李四': 90}
scores.clear()#清空字典的元素
print('删除后：',scores)#删除后： {}

#添加元素
scores['陈六']=10
print(scores)#{'陈六': 10}

scores['陈六']=100
print(scores)#{'陈六': 100}

scores={'张三':10,"李四":90}
#获取所有的key
keys=scores.keys()
print(keys)#打印dict_keys(['张三', '李四'])
print(list(keys))#将所有的key组成的视图转换成列表
#打印['张三', '李四']

#获取所有的value
values=scores.values()
print(values)#dict_values([10, 90])
print(list(values))#[10, 90]

#获取所以的key-value对
items=scores.items()
print(items)#dict_items([('张三', 10), ('李四', 90)])
print(list(items))#[('张三', 10), ('李四', 90)]

#字典元素的遍历
for item in scores:
    print(item,scores[item])#张三10 李四90

#字典生成式
items=['fruits','books','others']
prices=[10,20,39]

d={item:price    for item,price in zip(items,prices)}
print(d)

